-
Notifications
You must be signed in to change notification settings - Fork 13k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[FLINK-13025] Elasticsearch 7.x support #9720
Conversation
Thanks a lot for your contribution to the Apache Flink project. I'm the @flinkbot. I help the community Automated ChecksLast check on commit 67f07a9 (Wed Oct 16 08:43:21 UTC 2019) Warnings:
Mention the bot in a comment to re-run the automated checks. Review Progress
Please see the Pull Request Review Guide for a full explanation of the review process. The Bot is tracking the review progress through labels. Labels are applied according to the order of the review items. For consensus, approval by a Flink committer of PMC member is required Bot commandsThe @flinkbot bot supports the following commands:
|
Note: This PR may not be ready for review especially for document support. |
CI report:
Bot commandsThe @flinkbot bot supports the following commands:
|
603db69
to
9bc5949
Compare
9bc5949
to
53bfd62
Compare
@aljoscha What do you think about this PR? Anything that I missed, please let me know. Thanks |
I had a cursory glance at this. The code seems fine, because it's basically the ES 6 code. I have some general comments:
|
@aljoscha It seems you are right, we do not need the dependency of table planner. Next, I will try to move the table-specific code from the es connector to SQL connector. |
2fbb118
to
a89047b
Compare
bfeeca4
to
3ba6a27
Compare
3ba6a27
to
430a4c1
Compare
@aljoscha I have addressed your comments (except moving table-specified code of |
Yes, I will definitely look at this! |
@@ -0,0 +1,45 @@ | |||
flink-sql-connector-elasticsearch7 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why does this have a NOTICE file while the ES 6 connector doesn't?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @aljoscha This NOTICE file referenced flink-sql-connector-elasticsearch6
. The flink-connector-elasticsearch7
referenced flink-connector-elasticsrearch6
, so they both have no NOTICE file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did you check whether the contents of the new NOTICE
file is correct? A quick mvn dependency:tree
on the new sql connector shows some dependencies that are not in the NOTICE
file. I think these are new compared to ES6, which didn't have them. You can compare the output of mvn depdendency:tree
on the ES6 sql jar and on the new ES7 sql jar and also compare to the NOTICE
files.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, I forgot to check the dependency list. I will do the comparation soon.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@aljoscha I have run mvn depdendency:tree
command and checked the license of every dependency through maven repository. Can you review again?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@twalthr Any other additional remarks?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi, this is not correct, the list of flink-shaded
dependencies has nothing to do with the local shading in this connector. What I did now is to look at the output of mvn clean install
in the ES7 connector directory. It has a section about what is included and what is not included. Based on this information I added some additional exclusions and I updated the NOTICE file: aljoscha@b80c8b9. I will apply this fix and then merge the PR.
If you are more attentive to these subtle problems, like dependencies and the NOTICE file, the PR review process could be a lot smoother.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@aljoscha Thanks. Actually, I am really not familar with NOTICE file and things about license.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, it is easy to underestimate this. That is the problem, also for me. 😅
…and been shaded and excluded in maven-shade-plugin
I merged this. 👌 |
@aljoscha Thanks for helping me to review this PR and finish this work. |
@aljoscha When reviewed your first comment, it seems this is also a issue for ES 6 connector and sql connector. WDYT? Shall we fixed it? |
I think we can do that, yes. |
OK, I have created a Jira issue to track this problem. Please see: FLINK-14395 |
Hi @yanghua |
What is the purpose of the change
This pull request implemented a new elasticsearch connector to support elasticsearch 7.x
Brief change log
Verifying this change
This change is already covered by existing tests, such as ElasticsearchSinkITCase and Elasticsearch7UpsertTableSinkFactoryTest.
Does this pull request potentially affect one of the following parts:
@Public(Evolving)
: (yes / no)Documentation